﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MoreDots.SpellNames.Classes;


namespace MoreDots.SpellNames.Jobs
{
    public class DragoonSpells : LancerSpells
    {
        public static Spell Jump
        {
            get
            {
                return new Spell() { Name = "Jump", Level = 30 };
            }
        }
        public static Spell ElusiveJump
        {
            get
            {
                return new Spell() { Name = "Elusive Jump", Level = 35 };
            }
        }
        public static Spell SpineshatterDive
        {
            get
            {
                return new Spell() { Name = "Spineshatter Dive", Level = 40 };
            }
        }
        public static Spell PowerSurge
        {
            get
            {
                return new Spell() { Name = "Power Surge", Level = 45 };
            }
        }
        public static Spell DragonfireDive
        {
            get
            {
                return new Spell() { Name = "Dragonfire Dive", Level = 50 };
            }
        }

        public class CrossClass
        {
            public static Spell Featherfoot
            {
                get
                {
                    return PugilistSpells.Featherfoot;
                }
            }
            public static Spell Haymaker
            {
                get
                {
                    return PugilistSpells.Haymaker;
                }
            }
            public static Spell Mantra
            {
                get
                {
                    return PugilistSpells.Mantra;
                }
            }
            public static Spell SecondWind
            {
                get
                {
                    return PugilistSpells.SecondWind;
                }
            }
            public static Spell InternalRelease
            {
                get
                {
                    return PugilistSpells.InternalRelease;
                }
            }
            public static Spell Foresight
            {
                get
                {
                    return MarauderSpells.Foresight;
                }
            }
            public static Spell SkullSunder
            {
                get
                {
                    return MarauderSpells.SkullSunder;
                }
            }
            public static Spell Fracture
            {
                get
                {
                    return MarauderSpells.Fracture;
                }
            }
            public static Spell Bloodbath
            {
                get
                {
                    return MarauderSpells.Bloodbath;
                }
            }
            public static Spell MercyStroke
            {
                get
                {
                    return MarauderSpells.MercyStroke;
                }
            }
        }

        public static class PvP
        {
            public static Spell FetterWard
            {
                get
                {
                    return new Spell() { Name = "Fetter Ward", Level = 30 };
                }
            }
            public static Spell ImpulseRush
            {
                get
                {
                    return new Spell() { Name = "Impulse Rush", Level = 30 };
                }
            }
            public static Spell Skewer
            {
                get
                {
                    return new Spell() { Name = "Skewer", Level = 30 };
                }
            }
            public static Spell WeaponThrow
            {
                get
                {
                    return new Spell() { Name = "Weapon Throw", Level = 30 };
                }
            }
            public static Spell Enliven
            {
                get
                {
                    return new Spell() { Name = "Enliven", Level = 30 };
                }
            }
            public static Spell Purify
            {
                get
                {
                    return new Spell() { Name = "Purify", Level = 30 };
                }
            }
        }
    }
}
